/*
  文章分类模块
*/
const express = require('express')
const path = require('path')
const utility = require('utility')
const router = express.Router()
const db = require(path.join(__dirname, '../common/db.js'))

// 编辑分类提交表单
router.post('/article/updatecate', async (req, res) => {
  // 1、获取分类表单数据
  let params = req.body
  // 2、操作数据库
  let sql = 'update cate set name = ?, alias = ? where id = ?'
  let ret = await db.operateData(sql, [params.name, params.alias, params.id])
  // 3、响应状态
  if (ret && ret.affectedRows > 0) {
    res.json({
      status: 0,
      message: '更新分类成功'
    })
  } else {
    res.json({
      status: 1,
      message: '更新分类失败'
    })
  }
})

// 根据id查询分类详细数据
router.get('/article/cates/:id', async (req, res) => {
  // 1、获取请求参数id
  let id = req.params.id
  // 2、操作数据库
  let sql = 'select * from cate where id = ?'
  let ret = await db.operateData(sql, id)
  // 3、返回响应结果
  if (ret && ret.length > 0) {
    res.json({
      status: 0,
      message: '查询分类成功',
      data: ret[0]
    })
  } else {
    res.json({
      status: 1,
      message: '查询分类失败'
    })
  }
})

// 删除分类
router.get('/article/deletecate/:id', async (req, res) => {
  // 1、获取请求参数id
  let id = req.params.id
  // 2、根据id操作数据库删除分类
  // let sql = 'delete from cate where id = ?'
  let sql = 'update cate set is_delete = 2 where id = ?'
  let ret = await db.operateData(sql, id)
  // 3、响应状态
  if (ret && ret.affectedRows > 0) {
    res.json({
      status: 0,
      message: '删除分类成功'
    })
  } else {
    res.json({
      status: 1,
      message: '删除分类失败'
    })
  }
})

// 查询分类列表数据
router.get('/article/cates', async (req, res) => {
  // 1、操作数据库
  let sql = 'select * from cate where is_delete = 1'
  let ret = await db.operateData(sql)
  // 返回查询结果
  if (ret && ret.length > 0) {
    // 注册用户成功
    res.json({
      status: 0,
      message: '查询分类数据成功',
      data: ret
    })
  } else {
    res.json({
      status: 1,
      message: '查询分类数据失败'
    })
  }
})

// 添加分类
router.post('/article/addcates', async (req, res) => {
  // 1、获取请求参数
  let params = req.body
  // 2、操作数据库
  let sql = 'insert into cate set ?'
  let ret = await db.operateData(sql, params)
  // 3、返回操作状态
  if (ret && ret.affectedRows > 0) {
    // 注册用户成功
    res.json({
      status: 0,
      message: '添加文章分类成功'
    })
  } else {
    res.json({
      status: 1,
      message: '添加文章分类失败'
    })
  }
})


module.exports = router